import java.nio.ByteBuffer;

import sk.upjs.gursky.bplustree.BPObject;

public class Zaznam implements BPObject<Kluc, Zaznam> {

	private static final long serialVersionUID = -3849588860748391617L;
	
	String meno, priezvisko;
	int vek, plat;
	
	public Zaznam() {}
	
	public Kluc getKey() {		
		return new Kluc(priezvisko);
	}
	
	public int getSize() {		
		return 48;
	}
	
	public void save(ByteBuffer bb) {		
		for (int k = 0; k < 10; k++) {
			bb.putChar(meno.charAt(k));
		}
		for (int k = 0; k < 10; k++) {
			bb.putChar(priezvisko.charAt(k));
		}
		bb.putInt(vek);
		bb.putInt(plat);
	}
		
	public void load(ByteBuffer bb) {	
		char[] data = new char[10];		
		for (int i = 0; i < 10; i++) {
			data[i] = bb.getChar();
		}
		meno = new String(data);
		for (int i = 0; i < 10; i++) {
			data[i] = bb.getChar();
		}
		priezvisko = new String(data);
		vek = bb.getInt();
		plat = bb.getInt();
	}
	
	@Override
	public String toString() {		
		return meno + " " + priezvisko + " " + vek + " " + plat + System.getProperty("line.separator");
	}
	
	public int compareTo(Zaznam zaznam) {		
		return this.priezvisko.compareTo(zaznam.priezvisko);
	}
	
	public String getPriezvisko() {
		return priezvisko;
	}
}